package us.kg.kotoriforest.spring.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Profile;
import org.springframework.stereotype.Component;
import us.kg.kotoriforest.spring.pojo.DataSourceWrapper;

/**
 * 数据源配置类
 *
 * @author Kotori rotroutine@163.com
 * @since 2025/1/27
 */
@Component
public class DataSourceWrapperConfig {

    // 开发环境数据源
    @Profile("dev") // 指定环境 Profile会有一个默认值default代表默认环境 环境可以通过spring.profiles.active=xxx来指定
    @Bean
    public DataSourceWrapper dev() {
        return new DataSourceWrapper(
                "com.mysql.cj.jdbc.Driver",
                "jdbc:mysql://localhost:3306/dev",
                "root",
                "123456");
    }

    // 生产环境数据源
    @Profile("prod")
    @Bean
    public DataSourceWrapper prod() {
        return new DataSourceWrapper(
                "com.mysql.cj.jdbc.Driver",
                "jdbc:mysql://localhost:3306/prod",
                "root",
                "123456");
    }

    // 测试环境数据源
    @Profile("test")
    @Bean
    public DataSourceWrapper test() {
        return new DataSourceWrapper(
                "com.mysql.cj.jdbc.Driver",
                "jdbc:mysql://localhost:3306/test",
                "root",
                "123456");
    }
}
